<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">

    <ui:composition template="layout.xhtml">
        <ui:define name="body">
            <h:form id="userForm" enctype="multipart/form-data">
                <br/>
                <h2 class="title">Pesquisar Bairro</h2>
                <p:growl id="messages" showDetail="false" autoUpdate="true"/> 
                <br/>
                <p:panel id="fatorPanel" styleClass="container_24 clearfix">
                    <h4 class="title">Dados Gerais</h4>
                    <p:outputLabel value="Bairro" styleClass="grid_3" />
                    <p:inputText  styleClass="grid_19"
                                  value="#{managerPesquisarBairro.bairro.nome}" />
                    <div class="clear"/>

                    <p:outputLabel value="Cidade" styleClass="grid_3"/>
                    <p:autoComplete styleClass="grid_20" dropdown="true" converter="cidadeconverter"
                                    var="cidade" itemLabel="#{cidade.nome.toString().concat(' - ').concat(cidade.estado.sgl)}"
                                    itemValue="#{cidade}" value="#{managerPesquisarBairro.cidade}"
                                    scrollHeight="200" forceSelection="true" process="@this"
                                    completeMethod="#{managerUtilitario.autocompleteCidade}"/>

                    <div class="clear"/>

                    <div class="buttonAction">
                        <p:commandButton id="pesquisarCommandButton" value="Pesquisar" icon="ui-icon-search"
                                         update="bairroTable"
                                         actionListener="#{managerPesquisarBairro.pesquisar()}"
                                         styleClass="ui-priority-primary" />
                        <p:commandButton id="bt_clear" value="Limpar" icon="ui-icon-clean"
                                         actionListener="#{managerPesquisarBairro.limpar()}"
                                         update="@form" />
                    </div>

                    <p:blockUI id="BLOCK" block="resultPanel" trigger="pesquisarCommandButton, bairroTable" > 
                        <p:graphicImage value="media/images/ajax-loader.gif"/>
                    </p:blockUI> 

                    <h4 class="title">Resultado</h4>
                    <p:panel id="resultPanel" styleClass="container_24 clearfix ">

                        <p:dataTable id="bairroTable" var="item" value="#{managerPesquisarBairro.dataModel}" 
                                     styleClass="grid_24" rowIndexVar="rowid"
                                     binding="#{managerPesquisarBairro.searchResults}"
                                     rows="5" paginator="true" lazy="true"   
                                     paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
                                     currentPageReportTemplate="{currentPage} de {totalPages}"
                                     paginatorPosition="bottom" emptyMessage="Nenhum registro encontrado"
                                     style="white-space: pre-wrap;">

                            <f:facet name="header">
                                <p:outputLabel value="Bairro #{managerPesquisarBairro.searchResults.rowCount eq 0 ? '' : '('.concat(managerPesquisarBairro.searchResults.rowCount).concat(')')}"/>
                            </f:facet> 
                            <p:column headerText="Ação" width="120">
                                <p:button title="Editar"
                                          href="editarbairro.xhtml?editBairro=#{item.id}"
                                          icon="ui-icon-pencil"/>
                                <p:button title="Visualizar"
                                          href="visualizarbairro.xhtml?visBairro=#{item.id}"
                                          icon="ui-icon-zoomin"/>
                                <p:commandButton update="@form" title="Excluir"
                                                 oncomplete="dlg.show()" rendered="#{managerLayout.admin}"
                                                 icon="ui-icon-trash">
                                    <f:setPropertyActionListener target="#{managerPesquisarBairro.bairroDelete}" value="#{item}" />
                                </p:commandButton>

                            </p:column>

                            <p:column headerText="Bairro">
                                <h:outputText value="#{item.nome}"/>
                            </p:column>

                            <p:column headerText="Cidade">
                                <h:outputText value="#{item.cidade ne null ? 
                                                       item.cidade.estado ne null ?
                                                       item.cidade.nome.concat(' - ').concat(item.cidade.estado.sgl) : '' : 
                                                       item.cidade.nome}" />
                            </p:column>

                        </p:dataTable>

                    </p:panel>

                    <p:dialog id="modalDialog" header="Confirmação de remoção" widgetVar="dlg" modal="true" 
                              height="80" closable="false" resizable="false" >
                        <h:outputText value="Tem certeza que deseja remover este bairro ?" />
                        <div class="buttonAction">
                            <p:commandButton value="Sim"
                                             actionListener="#{managerPesquisarBairro.remover()}"
                                             update="@form"
                                             icon="ui-icon-check"/>
                            <p:commandButton value="Não" icon="ui-icon-close"
                                             oncomplete="dlg.hide()" />
                        </div>
                    </p:dialog>
                </p:panel>
            </h:form>
        </ui:define>
    </ui:composition>
</html>
